<?php  																														require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	$App 	= new App();	$Nav	= new Nav();	$Menu 	= new Menu();		include($App->getProjectCommon());    # All on the same line to unclutter the user's desktop'
/*******************************************************************************
 * Copyright (c) 2010
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *
 *******************************************************************************/

	$pageTitle 		= "Draw2d";

	$html  = <<<EOHTML
<div id="midcolumn">
<h2>$pageTitle</h2>
<p>Draw2d is a layout and rendering toolkit building on top of SWT. It may be used standalone (outside of Eclipse) or in combination with the GEF or Zest component.</p>

<img class="displayed" width="250" src="/gef/draw2d/images/Class_Diagram_Example.png" alt="GEF Snapshots" border="0"/>

<h3>Overview</h3>
<p>Draw2d is a lightweight toolkit for displaying graphical components on an SWT Canvas. Lightweight means that all 
graphical components, which are called <i>figures</i> in Draw2d, are simply java objects, with no corresponding resource 
in the operating system. 
</p><p>
A LightweightSystem associates a figure composition with an SWT Canvas. It hooks listeners for most SWT events, and forwards 
most of them to an EventDispatcher, which translates them into events on the appropriate figure. Paint events 
are forwarded from the figures to an UpdateManager, which coordinates painting and layouting on the canvas.
</p><p>
Figures can be composed via a parent-child relationship. Every figure has a rectangular bounds inside which it, 
and its children, paint. A layout manager can be used to place children based on their index and/or constraint.
Figures can be updated in ways which affect their appearance or size, and the update manager ensures that only one 
layout occurs, followed by a repaint of only the region which was updated.
</p><p>
Any type of diagram, document, or drawing can be easily constructed and efficiently updated by combining the provided 
figure and layout implementations along with the use of custom figures or layouts when needed.
</p>

<h3>Features</h3>
<ul>
<li>Efficient layout and rendering support</li>
<li>Various figure and layout implementations</li>
<li>Borders</li>
<li>Cursors and Tooltip support</li>
<li>Connection anchoring, routing, and decorating</li>
<li>Multiple, transparent layers</li>
<li>Flexible coordinate systems</li>
<li>Overview window (thumbnail with scrolling)</li>
<li>Printing</li>
</ul>

</div>
EOHTML;

# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>